Описание функций объекта pult
Основные функции
Управление запросами
Работа с прогрессом и загрузкой
Диалоги и формы
Работа с проектами и путями
Работа с переменными и трендами
Кастомные элементы и мнемосхемы
Вспомогательные функции
pult.loadList
- Назначение: Загрузка списка объектов.
- Аргументы:
widget
: Виджет, инициирующий запрос.
params
: Параметры запроса.
path
: Путь к родительскому объекту
docs
: (Опционально) Имена файлов документов (строка или массив строк). Каждый объект в файловой базе данных может иметь вложенные документы (JSON или бинарные файлы, ассоциированные с объектом). Данная опция позволяет получить в ответе функции их содержание.
unpack
: (Опционально) Имя документа, свойства которого будут развернуты в объект. Если опция указана, а документ является JSON-объектом, то его свойствами будет заполнен объект. Если опция не указана, а параметр docs
задан, содержимое документов будет доступно в соответствующих свойствах, без переноса в объект.
access
: (Опционально) Маска из ACS_TYPE_VIEW, ACS_TYPE_EXEC и ACS_TYPE_EDIT. Если параметр задан, сервер проверит наличие указанных в маске типов доступа пользователя к объекту и в свойстве _access вернет комбинацию реальных флагов доступа, которые имеет пользователь для этого объекта.
children
: Включить рекурсивное заполнение дерева объектов. Если опция отключена - функция вернет только первый уровень объектов, вложенных в родительский объект.
cache
: Включить кэширование запроса.
handler
: Обработчик результата.
- Возвращаемые значения: Нет.
- Особенности: Обрабатывает ошибки через
showModalError
.
Описание
pult.loadList
загружает указанные документы объектов, разворачивая свойства этих документов в качестве свойств объекта.
Пример
let params={
path:'/projects/Проект1.project/screens',
docs:'@prop.json',
unpack:'@prop.json',
access:pult.ACS_TYPE_VIEW | pult.ACS_TYPE_EDIT,
children:true
};
pult.loadList(widget,params,function (res){
console.log(res);
});
pult.loadObject
- Назначение: Загрузка объекта.
- Аргументы:
widget
: Виджет, инициирующий запрос.
params
: Параметры запроса.
handler
: Обработчик результата.
- Возвращаемые значения: Нет.
- Особенности: Поддерживает кеширование для интерфейсов.
Описание
pult.loadObject
загружает указанный в параметре path
объект и вложенные объекты. Функция аналогична pult.loadList
, за исключением того, что возвращает не массив вложенных объектов по указанному пути, а сам объект.
Пример:
let params={
path:'/projects/Проект1.project/screens/Экран1.screen',
docs:'@prop.json',
unpack:'@prop.json',
access:pult.ACS_TYPE_VIEW | pult.ACS_TYPE_EDIT,
children:false
};
pult.loadObject(widget,params,function (res){
console.log(res);
});
pult.shortPath
- Назначение: Преобразование полного пути в короткий.
- Аргументы:
- Возвращаемые значения: Короткий путь или
undefined
.
- Особенности: Удаляет префикс
/projects/
.
pult.showPath
- Назначение: Отображение пути в виджете.
- Аргументы:
widget
: Виджет.
path
: Путь для отображения.
- Возвращаемые значения: Нет.
- Особенности: Обновляет
breadcrumbs
виджета.
pult.showEditorLink
- Назначение: Отображение ссылки на редактор.
- Аргументы:
widget
: Виджет.
o
: Объект с правами доступа.
- Возвращаемые значения: Нет.
- Особенности: Проверяет права на редактирование.
pult.showObjectPath
- Назначение: Отображение пути объекта с подпутем.
- Аргументы:
widget
: Виджет.
o
: Объект.
subpath
: Дополнительный подпуть.
- Возвращаемые значения: Нет.
- Особенности: Формирует путь из родительских объектов.
pult.showObjectName
- Назначение: Отображение имени и иконки объекта.
- Аргументы:
widget
: Виджет.
o
: Объект.
- Возвращаемые значения: Нет.
- Особенности: Обновляет свойства виджета.
pult.showName
- Назначение: Отображение имени, иконки и ссылки.
- Аргументы:
widget
: Виджет.
name
: Имя.
icon
: Иконка.
link
: Ссылка.
- Возвращаемые значения: Нет.
- Особенности: Игнорирует, если имя задано в родительском виджете.
pult.showCaption
- Назначение: Отображение заголовка.
- Аргументы:
widget
: Виджет.
caption
: Текст заголовка.
- Возвращаемые значения: Нет.
- Особенности: Игнорирует, если заголовок задан в родительском виджете.
pult.showHeader
- Назначение: Управление отображением заголовка.
- Аргументы:
widget
: Виджет.
show
: Флаг отображения.
- Возвращаемые значения: Нет.
- Особенности: Игнорирует, если параметр задан в родительском виджете.
pult.selectMenuItem
- Назначение: Выбор пункта меню.
- Аргументы:
widget
: Виджет.
menuItemPath
: Путь пункта меню.
- Возвращаемые значения: Нет.
- Особенности: Подсвечивает выбранный пункт.
pult.showTopMenu
- Назначение: Отображение верхнего меню.
- Аргументы:
widget
: Виджет.
menu
: Меню.
- Возвращаемые значения: Нет.
Описание
pult.showTopMenu
отображает верхнее правое меню в заголовке окна указанного виджета.
Пример
pult.showTopMenu(widget,[
{
text:'Ссылка1',
href:'#interface/projects'
},
{
text:'Ссылка2',
onclick:function(e){
alert('click!');
}
},
])
pult.hideTopMenu
- Назначение: Скрытие верхнего меню.
- Аргументы:
widget
: Виджет.
menu
: Меню.
- Возвращаемые значения: Нет.
- Особенности: Сбрасывает свойства виджета.
pult.request
- Назначение: Отправка API-запроса.
- Аргументы:
widget
: Виджет.
method
: Метод запроса.
params
: Параметры запроса.
handler
: Обработчик результата вида f(req,res,err){...}
.
progress
: Флаг отображения прогресса.
cache
: Флаг кеширования.
- Возвращаемые значения: ID запроса.
Пример:
pult.request(widget,'fdb_list',{
path:'/projects/Проект1.project/nodes'
},function(req,res,err){
console.log(req,res,err);
if(err){
pult.showModalError(widget,err);
}else{
// do stuff with res
}
})
pult.requests
- Назначение: Пакетная отправка нескольких параллельных API-запросов.
- Аргументы:
widget
: Виджет.
rr
: Массив запросов: [[method1,{params1}],...,[methodN,{paramsN}]]
.
handler
: Обработчик результатов.
progress
: Флаг отображения прогресса.
- Возвращаемые значения: Нет.
- Особенности: Отправляет запросы параллельно, обработчик будет вызван при получении ответа на все запросы.
Пример:
pult.requests(widget,[
['fdb_list',{path:'/projects/Проект1.project/nodes'}],
['fdb_list',{path:'/projects/Проект1.project/screens'}],
],function(reqs,ress,errs){
console.log(reqs,ress,errs);
if(errs.count){
pult.showModalError(widget,`Errors: ${errs.count}`);
}else{
// do stuff with ress
for(let i=0; i<ress.length; i++){
let res=ress[i];
console.log(res);
}
}
})
pult.asyncRequest
- Назначение: Асинхронный запрос с обработкой прогресса.
- Аргументы:
widget
: Виджет.
method
: Метод запроса.
params
: Параметры запроса.
handler
: Обработчик результата.
progress
: Флаг отображения прогресса.
completeText
: Текст при успешном завершении.
- Возвращаемые значения: Нет.
- Особенности: Управляет очередью запросов и прогрессом.
pult.abort
- Назначение: Отмена запросов.
- Аргументы:
widget
: Виджет.
id
: ID запроса (опционально).
- Возвращаемые значения: Нет.
- Особенности: Если ID не указан, отменяет все запросы виджета.
pult.subscribe
- Назначение: Подписка на событие.
- Аргументы:
event
: Событие.
params
: Параметры подписки.
handler
: Обработчик события.
- Возвращаемые значения: Объект подписки.
- Особенности: Использует RPC для подписки.
pult.unsubscribe
- Назначение: Отмена подписки.
- Аргументы:
subscription
: Объект подписки.
- Возвращаемые значения: Результат отмены.
- Особенности: Использует RPC для отмены.
pult.showProgress
- Назначение: Показ индикатора прогресса.
- Аргументы:
- Возвращаемые значения: Нет.
- Особенности: Использует метод виджета
showProgress
.
pult.hideProgress
- Назначение: Скрытие индикатора прогресса.
- Аргументы:
- Возвращаемые значения: Нет.
- Особенности: Использует метод виджета
hideProgress
.
pult.showLoading
- Назначение: Показ индикатора загрузки.
- Аргументы:
widget
: Виджет.
text
: Текст загрузки.
- Возвращаемые значения: Нет.
- Особенности: Если виджет не указан, использует глобальный индикатор.
pult.hideLoading
- Назначение: Скрытие индикатора загрузки.
- Аргументы:
widget
: Виджет.
text
: Текст завершения.
- Возвращаемые значения: Нет.
- Особенности: Если виджет не указан, использует глобальный индикатор.
pult.asyncReset
- Назначение: Сброс асинхронных запросов виджета.
- Аргументы:
- Возвращаемые значения: Нет.
- Особенности: Удаляет все запросы виджета из очереди.
pult.showWidget
- Назначение: Показ виджета в модальном окне.
- Аргументы:
widget
: Виджет (родительский).
params
: Параметры (объект):
caption
: Заголовок модального окна.
src
: URL отображаемого виджета.
width
: Ширина окна (число).
height
: Высота окна (число).
- Возвращаемые значения: Объект формы.
- Особенности: В открывшемся модальном окне будет отображен виджет, доступный по переданному в параметре
src
URL, который должен начинаться на #, например: #interface/journal?path=/projects/Проект1.project/journal
pult.showLogout
- Назначение: Показ диалога выхода.
- Аргументы:
- Возвращаемые значения: Нет.
- Особенности: Использует
showConfirm
.
pult.showError
- Назначение: Показ ошибки.
- Аргументы:
widget
: Виджет.
err
: Ошибка.
data
: Дополнительные данные.
- Возвращаемые значения: Нет.
- Особенности: Использует метод виджета
showError
.
pult.hideError
- Назначение: Скрытие ошибки.
- Аргументы: Нет.
- Возвращаемые значения: Нет.
- Особенности: Использует метод виджета
hideError
.
pult.showModalError
- Назначение: Показ модальной ошибки.
- Аргументы:
widget
: Виджет.
err
: Ошибка.
data
: Дополнительные данные.
link_text
: Текст ссылки.
link_href
: URL ссылки.
link_target
: Цель ссылки.
- Возвращаемые значения: Нет.
- Особенности: Поддерживает ссылки на интерфейсы и редакторы.
pult.hideModalError
- Назначение: Скрытие модальной ошибки.
- Аргументы:
- Возвращаемые значения: Нет.
- Особенности: Использует метод виджета
hideModalError
.
pult.showCount
- Назначение: Показ счетчика.
- Аргументы:
widget
: Виджет.
count
: Значение счетчика.
text
: Текст.
- Возвращаемые значения: Нет.
- Особенности: Использует метод виджета
showCount
.
pult.hideCount
- Назначение: Скрытие счетчика.
- Аргументы:
widget
: Виджет.
count
: Значение счетчика.
text
: Текст.
- Возвращаемые значения: Нет.
- Особенности: Использует метод виджета
hideCount
.
pult.showObject
- Назначение: Отображение объекта.
- Аргументы:
widget
: Виджет.
path
: Путь объекта.
caption
: Заголовок.
handler
: Обработчик результата.
- Возвращаемые значения: Нет.
- Особенности: Загружает объект и его родителя (если проект).
pult.showConfirm
- Назначение: Показ диалога подтверждения.
- Аргументы:
widget
: Виджет.
params
: Параметры диалога.
handler
: Обработчик подтверждения.
- Возвращаемые значения: Объект формы.
- Особенности: Поддерживает кастомные кнопки и текст.
pult.showInfo
- Назначение: Показ информационного сообщения.
- Аргументы:
widget
: Виджет.
params
: Параметры сообщения.
- Возвращаемые значения: Объект формы.
- Особенности: Поддерживает заголовок, текст и кнопки.
pult.showForm
- Назначение: Показ модальной формы.
- Аргументы:
widget
: Виджет.
params
: Параметры формы.
- Возвращаемые значения: Объект формы.
- Особенности: Поддерживает валидацию, кнопки и обработчики.
pult.hideForm
- Назначение: Скрытие модальной формы.
- Аргументы: Нет.
- Возвращаемые значения: Нет.
- Особенности: Использует глобальную форму.
pult.drawForm
- Назначение: Создание формы.
- Аргументы:
parent
: Родительский элемент.
content
: Содержимое формы.
params
: Параметры формы.
- Возвращаемые значения: Объект формы.
- Особенности: Поддерживает кнопки, валидацию и обработчики.
pult.getTooltip
- Назначение: Получение всплывающей подсказки.
- Аргументы: Нет.
- Возвращаемые значения: Элемент подсказки.
- Особенности: Создает подсказку, если она отсутствует.
pult.showInvalid
- Назначение: Показ ошибки валидации.
- Аргументы:
widget
: Виджет.
control
: Элемент управления.
error
: Текст ошибки.
- Возвращаемые значения: Нет.
- Особенности: Показывает всплывающее сообщение.
pult.hideInvalid
- Назначение: Скрытие ошибки валидации.
- Аргументы:
widget
: Виджет.
control
: Элемент управления.
- Возвращаемые значения: Нет.
- Особенности: Скрывает всплывающее сообщение.
pult.showBatchForm
- Назначение: Показ формы для пакетной обработки.
- Аргументы:
widget
: Виджет.
params
: Параметры формы.
- Возвращаемые значения: Объект формы.
- Особенности: Поддерживает отображение результатов.
pult.showTooltip
- Назначение: Показ всплывающей подсказки.
- Аргументы:
widget
: Виджет.
text
: Текст подсказки.
control
: Элемент управления.
time
: Время отображения (мс).
className
: CSS-класс.
- Возвращаемые значения: Элемент подсказки.
- Особенности: Автоматически скрывается через указанное время.
pult.getProjectPath
- Назначение: Получение пути проекта.
- Аргументы:
- Возвращаемые значения: Путь проекта или
null
.
- Особенности: Извлекает путь из полного пути.
pult.getProjectName
- Назначение: Получение имени проекта.
- Аргументы:
- Возвращаемые значения: Имя проекта или
undefined
.
- Особенности: Извлекает имя из пути.
pult.getPseudoPath
- Назначение: Преобразование пути в псевдо-путь.
- Аргументы:
path
: Путь.
title
: Заголовок (опционально).
start
: Начальный индекс (опционально).
sep
: Разделитель (опционально).
- Возвращаемые значения: Псевдо-путь.
- Особенности: Упрощает отображение путей.
pult.getProjectInterfaceLink
- Назначение: Получение ссылки на интерфейс проекта.
- Аргументы:
- Возвращаемые значения: URL.
- Особенности: Использует схему из
schema.types
.
pult.drawDashboard
- Назначение: Отрисовка дашборда.
- Аргументы:
container
: Контейнер.
project
: Проект.
editor
: Флаг редактора.
- Возвращаемые значения: Нет.
- Особенности: Поддерживает различные макеты.
pult.subscribeStatusVar
- Назначение: Подписка на переменные статуса.
- Аргументы:
widget
: Виджет.
status_vars
: Массив переменных.
handler
: Обработчик изменений.
- Возвращаемые значения: Нет.
- Особенности: Использует RPC для подписки.
pult.unsubscribeStatusVar
- Назначение: Отмена подписки на переменные статуса.
- Аргументы:
- Возвращаемые значения: Нет.
- Особенности: Отменяет все подписки виджета.
pult.setVar
- Назначение: Установка значения переменной.
- Аргументы:
widget
: Виджет.
name
: Имя переменной.
value
: Значение.
payload
: Дополнительные данные.
handler
: Обработчик результата.
- Возвращаемые значения: Нет.
- Особенности: Использует RPC для установки.
pult.subscribeVars
- Назначение: Подписка на обновления переменных.
- Аргументы:
widget
: Виджет.
arrayOfNames
: Массив имен переменных.
handler
: Обработчик обновлений.
- Возвращаемые значения: Нет.
Пример:
pult.subscribeVars(widget,['P1_N1_var1'], function (data){
for(let i=0; i<data.length; i++){
let [name,time,value,error,payload]=data[i];
console.log(name,time,value,error,payload);
}
});
pult.unsubscribeVars
- Назначение: Отмена подписки на переменные.
- Аргументы:
- Возвращаемые значения: Нет.
- Особенности: Отменяет все подписки виджета.
pult.loadTrends
- Назначение: Загрузка трендов.
- Аргументы:
vars
: Массив переменных.
handler
: Обработчик результата.
- Возвращаемые значения: Нет.
- Особенности: Использует RPC для загрузки.
pult.trendSyncSetTime
- Назначение: Установка временного диапазона для трендов.
- Аргументы:
t1
: Начальное время.
t2
: Конечное время.
force
: Флаг принудительного обновления.
- Возвращаемые значения: Нет.
- Особенности: Сохраняет настройки в localStorage.
pult.trendSyncGetTime
- Назначение: Получение временного диапазона для трендов.
- Аргументы: Нет.
- Возвращаемые значения: Массив
[t1, t2, realTime]
.
- Особенности: Использует настройки из hash или localStorage.
pult.trendSyncSetLegendLine
- Назначение: Установка позиции легенды трендов.
- Аргументы:
- Возвращаемые значения: Нет.
- Особенности: Обновляет глобальную переменную.
pult.observeCustomElements
- Назначение: Наблюдение за кастомными элементами.
- Аргументы:
widget
: Виджет.
target
: Целевой элемент.
rules
: Правила наблюдения.
handlers
: Обработчики событий.
options
: Дополнительные параметры.
- Возвращаемые значения: Объект наблюдателя.
- Особенности: Использует
CustomElementObserver
.
pult.registerCustomElements
- Назначение: Регистрация кастомных элементов.
- Аргументы:
widget
: Виджет.
tags
: Теги элементов.
win
: Окно (опционально).
custo
: Наблюдатель (опционально).
onError
: Обработчик ошибок.
- Возвращаемые значения: Нет.
- Особенности: Загружает скрипты и стили.
pult.loadMimics
- Назначение: Загрузка мнемосхем.
- Аргументы:
widget
: Виджет.
mimics
: Массив мнемосхем.
handler
: Обработчик результата.
win
: Окно (опционально).
- Возвращаемые значения: Нет.
- Особенности: Регистрирует мнемосхемы в
ControlCommonProto1
.
pult.registerBadComponent
- Назначение: Регистрация нерабочего компонента.
- Аргументы:
tag
: Тег компонента.
win
: Окно (опционально).
- Возвращаемые значения: Нет.
- Особенности: Создает заглушку для компонента.
pult.getMimicShortPath
- Назначение: Получение короткого пути мнемосхемы.
- Аргументы:
tag
: HTML-Тег мнемосхемы.
- Возвращаемые значения: Короткий путь.
- Особенности: Декодирует base36.
pult.getMimicPath
- Назначение: Получение полного пути мнемосхемы.
- Аргументы:
widget
: Виджет.
tag
: HTML-Тег мнемосхемы.
- Возвращаемые значения: Полный путь.
- Особенности: Использует путь проекта.
pult.getMimicContentURL
- Назначение: Получение URL содержимого мнемосхемы.
- Аргументы:
widget
: Виджет.
tag
: HTML-Тег мнемосхемы.
- Возвращаемые значения: URL.
- Особенности: Формирует путь к файлу.
pult.getMimicTag
- Назначение: Получение HTML-тега мнемосхемы.
- Аргументы:
widget
: Виджет.
shortPath
: Короткий путь.
- Возвращаемые значения: HTML-Тег.
- Особенности: Кодирует base36.
pult.reload
- Назначение: Перезагрузка страницы.
- Аргументы: Нет.
- Возвращаемые значения: Нет.
- Особенности: Использует
location.reload()
.
pult.reloadWidget
- Назначение: Перезагрузка виджета.
- Аргументы: Нет.
- Возвращаемые значения: Нет.
- Особенности: Перезагружает текущий виджет.
pult.navigate
- Назначение: Переход по URL.
- Аргументы:
- Возвращаемые значения: Нет.
- Особенности: Использует
window.location
.
pult.errstr
- Назначение: Преобразование ошибки в текст.
- Аргументы: Нет.
- Возвращаемые значения: Функция обработки ошибок.
- Особенности: Используется для локализации ошибок.
pult.jkr
- Назначение: Преобразование строк в объекты.
- Аргументы:
keys
: Ключи.
rows
: Строки данных.
- Возвращаемые значения: Массив объектов.
- Особенности: Упрощает работу с данными RPC.
pult.getListValue
- Назначение: Получение значения из списка.
- Аргументы:
- Возвращаемые значения: Значение или
undefined
.
- Особенности: Поддерживает строки и массивы.
pult.loadVars
- Назначение: Загрузка переменных.
- Аргументы:
widget
: Виджет.
params
: Параметры запроса.
handler
: Обработчик результата.
- Возвращаемые значения: Нет.
- Особенности: Обрабатывает ошибки через
showModalError
.
pult.loadBundle
- Назначение: Загрузка бандла файлов.
- Аргументы:
widget
: Виджет.
path
: Путь.
ext
: Расширения файлов.
handler
: Обработчик результата.
- Возвращаемые значения: Нет.
- Особенности: Объединяет содержимое файлов.
pult.loadDictionary
- Назначение: Загрузка словаря.
- Аргументы:
widget
: Виджет.
name
: Имя словаря.
project
: Проект.
handler
: Обработчик результата.
- Возвращаемые значения: Нет.
- Особенности: Загружает записи словаря.
pult.applySchemaDefaults
- Назначение: Применение значений по умолчанию из схемы.
- Аргументы:
o
: Объект.
type
: Тип объекта.
- Возвращаемые значения: Нет.
- Особенности: Использует
schema.types
.
pult.getTypeDef
- Назначение: Получение значения свойства по умолчанию.
- Аргументы:
object
: Объект.
property
: Свойство.
- Возвращаемые значения: Значение.
- Особенности: Использует
schema.types
.
pult.selectMimicForDevice
- Назначение: Выбор мнемосхемы для текущего устройства.
- Аргументы:
shortPaths
: Короткие пути мнемосхем (мобильная, десктопная).
prefer
: Предпочтение (опционально).
- Возвращаемые значения: Выбранный путь.
- Особенности: Учитывает тип устройства.
pult.getResourceFileLink
- Назначение: Получение ссылки на ресурс.
- Аргументы:
- Возвращаемые значения: URL.
- Особенности: Определяет тип ссылки по расширению.
pult.getVarProjectName
- Назначение: Получение имени проекта переменной.
- Аргументы:
globalName
: Глобальное имя переменной.
- Возвращаемые значения: Имя проекта.
- Особенности: Разбирает глобальное имя.
pult.getParentWidget
- Назначение: Получение родительского виджета.
- Аргументы:
- Возвращаемые значения: Виджет или
undefined
.
- Особенности: Ищет вверх по дереву DOM.
pult.getAlarmSoundPhases
- Назначение: Получение фаз звука тревоги.
- Аргументы:
- Возвращаемые значения: Массив
[p1, p0]
.
- Особенности: Разбирает имя файла.
pult.showColorPicker
- Назначение: Показ палитры цветов.
- Аргументы:
widget
: Виджет.
control
: Элемент управления.
- Возвращаемые значения: Нет.
- Особенности: Загружает скрипты палитры.
pult.showBatchErrors
- Назначение: Показ ошибок пакетной обработки.
- Аргументы:
widget
: Виджет.
params
: Параметры формы.
- Возвращаемые значения: Объект формы.
- Особенности: Автоматически скрывает кнопку отправки.
pult.asyncQueue
- Назначение: Очередь асинхронных запросов.
- Аргументы: Нет.
- Возвращаемые значения: Массив запросов.
- Особенности: Используется для управления асинхронными операциями.